home *** CD-ROM | disk | FTP | other *** search
/ MACD 5 / MACD 5.bin / internet / yam_i_dodatki / yamscripts / decodefolder.rexx < prev    next >
OS/2 REXX Batch file  |  1997-07-22  |  2KB  |  53 lines

  1. /* Decodes all messages in the folder with munpack 1.5 which is available from Aminet */
  2. options results
  3. call addlib('rexxreqtools.library',0,-30,0)
  4. call addlib('rexxsupport.library',0,-30,0)
  5.  
  6. /* Change the screen name if you want the requester to appear on some other screen */
  7. tags='rtfi_flags=freqf_nofiles rt_pubscrname=SCREEN'
  8. OpenWindow='yes'    /* if yes, a console window is opened */
  9. DelPattern='#?.desc'    /* Files in output dir matching this pattern will be deleted */
  10.             /* Use standard AmigaDos patterns, for example ~(#?.rexx) */
  11.             /* deletes everything else than rexx scripts */
  12.  
  13. address 'YAM'
  14. 'GetMailInfo Act'
  15. act=result
  16. 'GetFolderInfo Max'
  17. last=result-1
  18. first=0
  19.  
  20. 'request "Which messages should be decoded?" "_All|Ab_ove|_This|_Below|_Quit"'
  21. if result=0 then exit
  22. if result=2 then last=act
  23. if result=3 then do
  24.     first=act
  25.     last=act
  26.     end
  27. if result=4 then first=act
  28.  
  29. OutDir=rtfilerequest('T:','','Select a directory','_Decode',tags)
  30. if OutDir='' then exit
  31.  
  32. /* If you do not want a window, change the variable OpenWindow in the beginning*/
  33. if upper(OpenWindow)='YES' then do
  34.     Call Close(STDOUT)
  35.     Call Close(STDIN)
  36.     Call Open(STDOUT,'CON:1/11/638/130/DecodeFolder.rexx Output /CLOSE/WAIT/SCREEN'scrn,'w')
  37.     Call Pragma('*',STDOUT)
  38.     Call Open(STDIN,'*')
  39.     end
  40. if upper(OpenWindow)='YES' then say 'Decoding messages from' first 'to' last
  41.  
  42. do m=first to last
  43.     'SetMail' m
  44.     'GetMailInfo file'
  45.     address command 'munpack' result '-C' OutDir
  46.     address command 'delete' OutDir || DelPattern
  47.     end
  48.  
  49. say
  50. if upper(OpenWindow)='YES' then say 'All done, you can close the window'
  51.  
  52. 'SetMail' act
  53.